import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')  # ATTENTION

plt.rcParams['font.sans-serif'] = ['Simhei']
plt.rcParams['axes.unicode_minus'] = False
plt.figure(figsize=[12, 6])
spr = 1
spc = 2
spn = 0


def sep(label=''):
    print('-' * 32, label, '-' * 32, sep='')


# 2.	使用pandas，对bank.xls进行如下处理（30分）
# (1)	基础查询
# ①	读取数据集
df = pd.read_excel(r'../../../../../large_data/ML2/bank.xls')

# ②	查看前5行信息
sep('查看前5行信息')
print(df[:5])

# ③	查看贷款期限为36，还款状态为A的所有信息
sep('查看贷款期限为36，还款状态为A的所有信息')
df2 = df[(df['贷款期限'] == 36)&(df['还款状态'] == 'A')]
print(df2)

# (2)	图像可视化
# ①	使用条形图绘制还款状态数量
spn += 1
plt.subplot(spr, spc, spn)
sns.countplot(x='还款状态', data=df)

# ②	将前10条数据的贷款金额绘制折线图
spn += 1
plt.subplot(spr, spc, spn)
df2 = df[:10].reset_index()
df2['index'] += 1
sns.lineplot(x='index', y='贷款金额', data=df2)

plt.show()
